﻿namespace WeWork.Entitys
{
    /// <summary>
    /// 解密后消息接口基类
    /// </summary>
    public interface IChatBase
    {
        /// <summary>
        /// 记录的seq值。Uint64类型，范围0-pow(2,64)-1
        /// 需要从加密消息体中赋值过来
        /// </summary>
        long seq { get; set; }
        /// <summary>
        /// 消息id，消息的唯一标识，企业可以使用此字段进行消息去重。String类型
        /// </summary>
        string msgid { get; set; }
        /// <summary>
        /// 消息动作，目前有send(发送消息)/recall(撤回消息)/switch(切换企业日志)三种类型。String类型
        /// </summary>
        string action { get; set; }
    }

    /// <summary>
    /// 解密后消息实体
    /// </summary>
    public class ChatBase : IChatBase
    {
        /// <summary>
        /// 记录的seq值。Uint64类型，范围0-pow(2,64)-1
        /// 需要从加密消息体中赋值过来
        /// </summary>
        public long seq { get; set; }
        /// <summary>
        /// 消息id，消息的唯一标识，企业可以使用此字段进行消息去重。String类型
        /// </summary>
        public string msgid { get; set; } = string.Empty;
        /// <summary>
        /// 消息动作，目前有send(发送消息)/recall(撤回消息)/switch(切换企业日志)三种类型。String类型
        /// </summary>
        public string action { get; set; } = string.Empty;
    }
}
